package cn.wolfcode.crm.mapper;

import cn.wolfcode.crm.domain.ProductStock;
import cn.wolfcode.crm.query.QueryObject;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ProductStockMapper {
    int deleteByPrimaryKey(Long id);

    int insert(ProductStock record);

    ProductStock selectByPrimaryKey(Long id);

    List<ProductStock> selectAll();

    int updateByPrimaryKey(ProductStock record);

    List<ProductStock> queryForList(QueryObject qo);

    ProductStock selectStockByProductSnAndDepotId(@Param("productName")String productName, @Param("depotId")Long depotId);

    void updateProductStockNumber(ProductStock stock);

    void updateByAuditNumber(ProductStock stock);

    void updateReviseNumber(ProductStock stock);

    void updateNumberAndAmount(ProductStock stock);

    List<ProductStock> queryForResult(QueryObject qo);
}